In a typical graphics processing, software applications use a hardware interface (e.g., a graphical device interface (GDI)) to display or print bitmapped text (e.g., TrueType fonts), images, and other graphical elements. For example, the GDI is responsible for drawing items (such as dialog boxes, buttons, and other graphical elements) in a consistent style on a screen by calling the appropriate display drivers and passing them the information on the items to be drawn. In order to take advantage of the GDI, a software program typically uses a set of routines, such as those provided in a software development kit (SDK) library to configure these software applications to call GDI functions. For example, a SDK library includes functions such as icon operations, rectangle operations, or the like.
Under the current computer systems and configurations, most GDI features are executed by a central processing unit (CPU). As a result, apart from executing other processes, the CPU needs to process graphics elements and images, such as rendering 2D images, video streams, or the like. The additional graphical processing impedes overall performances of the CPU and a computer system because graphical processing requires extensive calculations of graphical parameters, such as pixel or texture calculation, rendering or animation of images, or the like. While CPU processing of these graphics or images is adequate, an improvement in graphics or image processing is desirable.
In addition, most current systems or applications use two dimensional algorithms to process graphics effects. For example, a user may insert a transition between two media objects or images such that the resulting sequence of displaying the two media object has a smooth transition. In existing systems, the CPU needs resources and time to execute the algorithms and programming instructions in addition to displaying the resulting sequence.
Accordingly, a system and method for delegating or shifting graphics processing tasks to a graphics processing unit (GPU) is desirable by using a 3D model and fixed pipeline functions of the GPU to create two dimensional graphical effects. Alternatively, a system and method for creating two dimensional graphics effects using a set of instructions for processing the two dimensional effects in the 3D coordinate system is desired.